/**
 * FileName: UserVO
 * Author: TangZaoBang
 * Date: 2023/04/29 13:46
 * Description:
 * <p>
 * History:
 * <author> TangZaoBang
 * <time> 2023/04/29 13:46
 * <version> 1.0.0
 * <desc> 版本描述
 */
package com.bosssoft.quickstart.demo.pojo.vo;
import com.bosssoft.quickstart.demo.base.BaseVO;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;

import javax.validation.constraints.NotBlank;
import java.time.LocalDate;


/**
 * @ClassName: UserVO
 * @Description 用于前端的显示的对象可以是 VO也可以是DTO
 * @author TangZaoBang
 * @date 2023/04/29 15:35
 * @Version
 **/
@ApiModel("增加和修改使用的用户对象")
@Slf4j
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
public class UserVO extends BaseVO {
    /**
     *  id 雪花算法生成对应行的记录id
     */
    @ApiModelProperty("记录id")
    @JsonSerialize(using= ToStringSerializer.class)
    private Long id;
    /**
     *  姓名
     */
    @ApiModelProperty("姓名")
    @NotBlank(message = "姓名不能为空")
    private String name;
    /**
     *  身份证id
     */
    @ApiModelProperty("身份证id")
    @NotBlank(message = "身份证id不能为空")
    private String citizenId;
    /**
     *  生日
     */
    @ApiModelProperty("生日")
    private LocalDate birthday;

}
